QuickTime 3 Reference
QTAtomContainer-based data structures are being widely used in QuickTime. This appendix is an attempt at standardizing how the format of these data structure may be described and is documented. The key presented here is used in the QuickTime 3.0 tween documentation in the QuickTime 3 Reference.
[(QTAtomFormatName)] =
atomType_1, id, index
data
atomType_n, id, index
data
The atoms may be required or optional:
<atomType>optional atom
atomTyperequired atom
The atom ID may be a number if it is required to be a constant, or may be a list of valid atom IDs, indicating that multiple atoms of this type are allowed.
3 one atom with id of 3
(1..3) three atoms with ids of 1, 2, and 3
(1, 5, 7) three atoms with ids of 1, 5, and 7
(anyUniqueIDs) multiple atoms each with a unique id
The atom index may be a 1 if only one atom of this type is allowed, or it may be a range from one to some constant or variable.
1 one atom of this type is allowed, index is always 1
(1..3) three atoms with indicies 1, 2, and 3
(1..numAtoms) numAtoms atoms with indicies of 1 to numAtoms
The data may be leaf data in which its data type is listed inside of brackets [], or may be a nested tree of atoms
[theDataType] leaf data of type theDataType
childAtomsa nested tree of atoms
Nested QT atom format definitions [( AtomFormatName )] may appear in a definition.